package com.bwsoft.admin.domain;

// default package

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.hibernate.annotations.GenericGenerator;

/**
 * 质量控制POJO
 * 
 * @author Cui Bowen
 */
@Entity
@Table(name = "qc_qualitycontrol")
public class QualityControl implements java.io.Serializable {

	private static final long serialVersionUID = 1989328766470832826L;
	@Id
	@Column(name = "id")
	@GenericGenerator(name = "idGenerator", strategy = "identity")
	@GeneratedValue(generator = "idGenerator")
	private Integer qcId;
	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "sponsor")
	private Account sponsor;
	private Integer status;
	@Transient
	private String statusName;
	private Boolean reportStatus;
	private String reportName;
	@ManyToOne(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
	@JoinColumn(name = "fileid")
	private File file;
	private String projectName;
	private Integer field;
	@Transient
	private String fieldName;
	private Integer scope;
	@Transient
	private String scopeName;
	private Integer count;
	@Transient
	private String countName;
	private Integer nature;
	@Transient
	private String natureName;
	private String standard;
	private String closeReason;
	private String price;
	private Date beginDate;
	private Date feedBackDate;
	private Date endDate;
	private String description;
	private String other;
	private Boolean ptclsj;
	private Boolean gbjgxx;
	private Boolean ptxz;
	private Boolean openFlag;
	private String img1;
	private String img2;
	private String img3;
	private Date addTime;

	@OneToMany(mappedBy = "qualityControl", cascade = CascadeType.ALL, fetch = FetchType.EAGER, targetEntity = QualityControlJoiner.class)
	private Set<QualityControlJoiner> qualityControlJoiners = new HashSet<QualityControlJoiner>();

	public Integer getQcId() {
		return qcId;
	}

	public void setQcId(Integer qcId) {
		this.qcId = qcId;
	}

	public Account getSponsor() {
		return sponsor;
	}

	public void setSponsor(Account sponsor) {
		this.sponsor = sponsor;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public String getStatusName() {
		return statusName;
	}

	public void setStatusName(String statusName) {
		this.statusName = statusName;
	}

	public Boolean getReportStatus() {
		return reportStatus;
	}

	public void setReportStatus(Boolean reportStatus) {
		this.reportStatus = reportStatus;
	}

	public String getReportName() {
		return reportName;
	}

	public void setReportName(String reportName) {
		this.reportName = reportName;
	}

	public File getFile() {
		return file;
	}

	public void setFile(File file) {
		this.file = file;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public Integer getField() {
		return field;
	}

	public void setField(Integer field) {
		this.field = field;
	}

	public String getFieldName() {
		return fieldName;
	}

	public void setFieldName(String fieldName) {
		this.fieldName = fieldName;
	}

	public Integer getScope() {
		return scope;
	}

	public void setScope(Integer scope) {
		this.scope = scope;
	}

	public String getScopeName() {
		return scopeName;
	}

	public void setScopeName(String scopeName) {
		this.scopeName = scopeName;
	}

	public Integer getCount() {
		return count;
	}

	public void setCount(Integer count) {
		this.count = count;
	}

	public String getCountName() {
		return countName;
	}

	public void setCountName(String countName) {
		this.countName = countName;
	}

	public String getStandard() {
		return standard;
	}

	public void setStandard(String standard) {
		this.standard = standard;
	}

	public Date getBeginDate() {
		return beginDate;
	}

	public void setBeginDate(Date beginDate) {
		this.beginDate = beginDate;
	}

	public Date getFeedBackDate() {
		return feedBackDate;
	}

	public void setFeedBackDate(Date feedBackDate) {
		this.feedBackDate = feedBackDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getOther() {
		return other;
	}

	public void setOther(String other) {
		this.other = other;
	}

	public Boolean getPtclsj() {
		return ptclsj;
	}

	public void setPtclsj(Boolean ptclsj) {
		this.ptclsj = ptclsj;
	}

	public Boolean getGbjgxx() {
		return gbjgxx;
	}

	public void setGbjgxx(Boolean gbjgxx) {
		this.gbjgxx = gbjgxx;
	}

	public Boolean getPtxz() {
		return ptxz;
	}

	public void setPtxz(Boolean ptxz) {
		this.ptxz = ptxz;
	}

	public String getImg1() {
		return img1;
	}

	public void setImg1(String img1) {
		this.img1 = img1;
	}

	public String getImg2() {
		return img2;
	}

	public void setImg2(String img2) {
		this.img2 = img2;
	}

	public String getImg3() {
		return img3;
	}

	public void setImg3(String img3) {
		this.img3 = img3;
	}

	public Date getAddTime() {
		return addTime;
	}

	public void setAddTime(Date addTime) {
		this.addTime = addTime;
	}

	public Set<QualityControlJoiner> getQualityControlJoiners() {
		return qualityControlJoiners;
	}

	public void setQualityControlJoiners(
			Set<QualityControlJoiner> qualityControlJoiners) {
		this.qualityControlJoiners = qualityControlJoiners;
	}

	public String getPrice() {
		return price;
	}

	public void setPrice(String price) {
		this.price = price;
	}

	public Boolean getOpenFlag() {
		return openFlag;
	}

	public void setOpenFlag(Boolean openFlag) {
		this.openFlag = openFlag;
	}

	public Integer getNature() {
		return nature;
	}

	public void setNature(Integer nature) {
		this.nature = nature;
	}

	public String getNatureName() {
		return natureName;
	}

	public void setNatureName(String natureName) {
		this.natureName = natureName;
	}

	public String getCloseReason() {
		return closeReason;
	}

	public void setCloseReason(String closeReason) {
		this.closeReason = closeReason;
	}
	

}